System for automatic generation of arbitrarily indexed hyperlinked text

ABSTRACT

A system that indexes text according to an arbitrary set of indices and automatically generates hyperlinks from each index to a related subject in a document. A text file containing the documentation of interest is used as input to a hyperlink processing program that generates a file containing links to all of the topics of interest. A category file is then created that indicates an association between each of the topics and corresponding subjects included in each topic. Next, a data structure is generated that associates each topic with corresponding subject names. A plurality of subject name files is generated, each including HTML (hypertext markup language) text corresponding to an associated subject, and a file comprising said hyperlinks to each of the subject name files is generated. A plurality of index files is generated, each including hyperlinks between each of the topics and corresponding subject name files. A list of category names corresponding to a primary set of indices is displayed in a first window, and a secondary set of said indices comprising a list of subject names is displayed in a second window, in response to a user selecting one of the category names. Finally, in response to a user selecting one of the subject names in the second window, the text in the subject name file corresponding to the subject name selected by the user is displayed in a third window.

FIELD OF THE INVENTION

[0001] The present invention relates generally to computer system textprocessing, and more particularly, to a system for automatic generationof arbitrarily indexed hyperlinked text.

BACKGROUND OF THE INVENTION

[0002] Statement Of The Problem

[0003] A ‘hyperlink’ is defined as a mechanism implemented via acomputer system which allows a viewer to link (or jump) from a sourcelocation in a document to a destination location in the same ordifferent document. The hyperlink is the combination of a displayelement or an indication (generally visual) that a hyperlink isavailable for a particular hyperlink source, and a computer program(typically a web browser) which finds and displays the hyperlinkdestination. A hyperlink thus provides a computer-assisted way for ahuman user to efficiently move between various locations containinginformation which is somehow related.

[0004] A significant problem with generating information forcomputer-based hyperlink systems is that an author (system developer)must review the material to be hyperlinked, identify topics to which tohyperlink, and must also manually set up the hyperlinks. This is atime-consuming and labor-intensive process. Some of the disadvantages ofmanually creating arbitrarily indexed hyperlinked documentation forinclude:

[0005] Since commands can be indexed in arbitrary groups (notnecessarily alphabetically), hand editing is required. This is notdesirable, since manual entry of the necessary hyperlinking tagsfrequently results in mistyped links, rendering the documentationuseless.

[0006] Since care must be taken to ensure that hand-generated links areaccurate, the process of creating documentation manually is very slowand tedious. Therefore, documentation may be out-of-date and no longerrelevant.

[0007] Both of the above problems are exacerbated when there arehundreds of commands to hyperlink to each other, and also when thedocumentation is frequently updated. In addition, after thedocumentation is updated, it must be updated on the web server. This maybe a problem if the person maintaining the documentation is not a website administrator, and thus must wait until an administrator isavailable to make the necessary updates.

[0008] Furthermore, every time a change is made to a document ofinterest, the author must manually update links to the changeddocumentation.

[0009] What is needed is a system that automatically generateshyperlinks from indexed text in one document to one or more relatedtopics in another document. There is also a need for a system thatautomatically updates the hyperlinks generated thereby toInternet-accessible web pages.

[0010] Solution To The Problem

[0011] The present system solves the above problems and achieves anadvance on the field by providing a system that indexes text accordingto an arbitrary (i.e., not necessarily alphabetical) set of indices andautomatically generates hyperlinks from each index to a related topic ina document. By automating the document linking and updating process, thechances of introducing errors into the hyperlinking process are greatlyreduced, if not eliminated. Documentation is kept up-to-date andrelevant. Furthermore, the documentation is instantly available over theInternet, since the present invention automatically copies all of thenecessary files to the appropriate web server. In addition, it is nolonger necessary to wait for the web server administrator to makeupdates to new or modified documentation.

[0012] A text file containing the text of the documentation of interestis used as input to a hyperlink processing program that generates a filecontaining links to all of the topics of interest in the documentation.In one embodiment of the present system, the hyperlink processingprogram performs the steps set forth below.

[0013] A category file is created that indicates an association betweeneach of the topics and corresponding subjects included in each topic;

[0014] a data structure is generated that associates each topic withcorresponding subject names in accordance with the association definedin the category file;

[0015] a plurality of subject name files is generated, each includingHTML (hypertext markup language) text corresponding to an associatedsubject;

[0016] a global index file comprising said hyperlinks to each of thesubject name files is generated;

[0017] a plurality of index files is generated, each includinghyperlinks between each of the topics and corresponding subject namefiles in accordance with the data structure;

[0018] a list of category names corresponding to a primary set ofindices is displayed in a first window, using hyperlinks in the indexfiles;

[0019] a secondary set of said indices comprising a list of subjectnames is displayed in a second window, in response to a user selectingone of the category names; and

[0020] in response to a user clicking on one of the subject names in thesecond window, the text in the subject name file corresponding to thesubject name selected by the user is displayed in a third window, usinghyperlinks in the global index file.

[0021] The present system also automatically updates the associatedhyperlinks to other information located on the Internet-accessible webpages.

BRIEF DESCRIPTION OF THE DRAWINGS

[0022]FIG. 1 illustrates a web page showing the use of hyperlinks in anexemplary embodiment;

[0023]FIG. 2 is a diagram showing the data organization in oneembodiment of the present system; and

[0024]FIGS. 3, 4A, and 4B are flowcharts illustrating an exemplarysequence of steps performed in carrying out one embodiment of thepresent system.

DETAILED DESCRIPTION

[0025]FIG. 1 illustrates a web page screen display 100 showing the useof hyperlinks in an exemplary embodiment of the present invention. Ahyperlink is an active area (‘hot area’) in a displayed document thatwhen ‘clicked’ on (e.g., by a mouse), causes the user's browser to loadan entity referenced by a URL (universal resource locator, whichspecifies the Internet address of the referenced item ).

[0026] An anchor is an area within the content of a hypertext node (e.g.a web page) which is the source or destination of a hyperlink. A sourceanchor may be a word, phrase, image, or possibly the whole node. Adestination anchor may be a whole node or some position within the node.Typically, clicking with a mouse on a source anchor causes the link tobe followed (by the user's web browser) and the anchor at thedestination end of the link to be displayed. A destination anchor issimply an anchor placed in a file at a hyperlink destination.

[0027] Anchors are typically highlighted in some way (either always, orwhen the mouse is over them), or they may be marked by a special symbol.In HTML (HyperText Markup Language), anchors are created with the<A..>..</A> construct. The opening A tag of a source anchor has an HREF(hypertext reference) attribute giving the destination in the form of aURL—usually a whole node or ‘page’. Consider the following hyperlinkdefinition:

[0028] <a href=“next.html” target=“window”>click here</a>

[0029] When a user clicks on the ‘hot area’ (source anchor) representedby “click here”, the document “next.html” will be loaded into the windowor frame named “window.” The anchor (<a>) tag is the HTML feature fordefining both the source and the destination of the hyperlink.

[0030] As shown in FIG. 1, a hyperlink is conceptually represented byarrow 103 between a hyperlink source 101(2), which is located in a firstdata file, and a hyperlink destination 104(1), which can be located inthe same or in a second data file. As shown in FIG. 1, text window 108includes a plurality of (i.e., n) textual or graphical hyperlink sourceentities 101(*) [where the ‘*’ symbol indicates a wildcard representingany member of the class of items having the same basic referencenumber], indicated as Index (1)—Index(n). Each text entity (hereinafterreferred to as an index) 101(*) has an associated HTML source anchor.For example, Index(2) [reference number 101(2)] has the associatedanchor 102, which has Subindex(1) 104(1) as its destination in targetwindow 109. The hyperlinked association between Index(2) and Subindex(1)is indicated by arrow 103. Alternatively, a source anchor in window 108,such as index(2) may have a destination anchor in a different window, asindicated by arrow 107 to destination (‘target’) text 111 in window 110.

[0031] The present example is set in the context of a web page 100 thatis used for displaying ‘help’ information about a system. For example,the items depicted by indices Index(1)—Index(n) [reference numbers101(10-101(n)] may be categories of system commands, such as “script”commands or “run” commands, for which a user desires information. One ofthe text entities, e.g., Index(1), may be a category that includes allof the commands (or other entities) for which a target text entity 111may be displayed.

[0032] When a user of the present system selects a particular commandcategory, by clicking a mouse on the category name, a list of all of thecommands in the category are displayed in a separate window. Forexample, if Index(2) in window 108 indicates “run commands”, when theuser selects (clicks on) the corresponding hot area 101(2) associatedwith Index(2), the text entities (sub-indices) Subindex(1), Subindex(2),and Subindex(3) in window 109 [shown by reference numbers 104(1)-104(3)]will then be displayed as a list of members of the selected category ofcommands such as “continue”, and “continue_one”, and “step”,respectively.

[0033] If the user then desires to see the specific help information,e.g., for the “step” command, the hot area [Subindex104(3)] for thiscommand is selected (clicked on) in window 109, and the associated(‘target’) text 111 is displayed in main window 110 on the web pagescreen display 100. The mechanism by which these operations areperformed is explained below in detail with reference to FIGS. 2, 3, 4Aand 4B.

[0034] Alternatively, the items depicted by text entitiesIndex(1)-Index(n) may be topics in a document (instead of systemcommands), in which case the text entities Subindex(1)-Subindex(m) arerelated subtopics or subjects, i.e., names of members of the classdenoted by the selected Index 101(*). In this case, the target text 111displayed in target window 110 describes the selected subtopic orsubject, rather than a system command.

[0035] The HTML frame for the screen display 100 is generated by copyingcommon files, for example, a gif file for the basic web page framegraphics, a .css file that describes the frame, and the index.html frame(the display screen html frame that points to the text for windows108/109. These common files are stored in a known location, such as inthe Command Name directory 212, described below with respect to step435.

[0036]FIG. 2 is a block diagram illustrating basic data components in anexemplary embodiment of the present system. As shown in FIG. 2, HelpText File 210 contains all of the help documentation, in plain text orASCII format, for the system of interest. Operation of the presentsystem is best understood by reference to FIG. 2 in conjunction with theflowcharts of FIGS. 3, 4A, and 4B, as described below. FIGS. 3, 4A, and4B are flowcharts illustrating an exemplary sequence of steps performedin carrying out one embodiment of the present system. As shown in FIGS.2 and 3, at step 305, all of the help text documentation (or otherdocumentation of interest) in a software program or other file (the‘initial documentation’) 205 is loaded into Help Text File 210.

[0037] At step 310, Help Text File 210 is then processed by a hyperlinkprocessor program, the details of which are explained below with respectto FIGS. 4A and 4B. Table 1, below, shows an exemplary format for threeof the entries in the Help Text File 210, which contains a number ofentries equal to the number of commands or subjects which may beseparately referenced (e.g., the number of text entities 111 which canbe separately displayed in target window 110). Each entry in the file isseparated by the delimiters “Command:” and “End:”, and the delimiter“Help:” is employed to indicate the beginning of the help text for eachcommand entry. These delimiters are generated and inserted when the HelpText file 210 is generated. TABLE 1 Help Text File Command: breakpointenable breakpoint enable <index> [<cnt>] Help: Enable breakpoint number<index>. If <index> is −1, enable all breakpoints. If <cnt> is provided,the breakpoint will be skipped the first <cnt> times it is hit. Use thecommand ‘breakpoint list’ for a list of all breakpoints. End: Command:create parisc create parisc <parisc> Help: Create a parisc templatenamed <parisc>. <parisc> may then be used in the ‘create dna’ command.See help for ‘param parisc’ for available parameters and default valuesEnd: Command: Step step [<count>] Help: Single step the current cpu for<count> instructions. If <count> is omitted, single step oneinstruction. See ‘help continue’ for a description of events that willcause an early termination of this command. End:

[0038] As shown in FIG. 4A, at step 410, Global Index file 214,containing a list of all of the commands (or other index words), iscreated by reading Help Text file 210 and inserting, in order, each ofthe command names found in file 210 into the Global Index file 214.

[0039] The HTML code for the hyperlinks used in the present system isgenerated at this step. The Help Text file 210 and the Global Index file214 are generated using two input files, the text documentation files inthe initial document 205, and a manually generated Main Category file215. From these two files, Global Index file 214, an Index Category file230(*) for each category in the Main Category file 215, and a CommandName file 220(*) for each command in the Help Text file 210, aregenerated. These files are described in detail below.

[0040] Exemplary contents of Global Index file 214 are shown below inTable 2. TABLE 2 Global Index File <!DOCTYPE HTML PUBLIC “-//W3C//DTDHTML 4.0 Transitional//EN”“http://www.w3.org/TR/REC-html40/loose.dtd><html> <head>  <title>All Commands</title>  <link REL=“STYLESHEET”TYPE=“text/css” HREF=“../beta.css”> </HEAD> <body> <divclass=“frametitle”>All Commands <br> <a href=“script.exit.html”target=“helpFrame”>.exit</a> <a href=“script.gosub.html”target=“helpFrame”>.gosub</a> <a href=“script.goto.html”target=“helpFrame”>.goto</a> . . . <a href=“address.addr.html”target=“helpFrame”>address addr </a> <a href=“address.encode.html”target=“helpFrame”>address encode </a> <a href=“address.rope.html”target=“helpFrame”>address rope </a> . . . <a href=“run.step.html”target=“helpFrame”>step </a> . . . </body> </html>

[0041] At step 412, a set of command (or subject) categories isdetermined, using arbitrary category names as desired. Step 412 may beperformed at any time prior to creating the Main Category file in step415, below.

[0042] At step 415, a Main (command) Category file 215 is manuallycreated. Each of the commands (or alternatively, subjects), for whichhelp text is generated, is manually assigned to one or more namedcategories, and placed in the Main Category file accordingly.

[0043] Each category is delimited by a percent sign in the first columnof the line. The name of the category follows and has no restrictions.Each command that belongs in a particular category is listed on aseparate line. Every command from the start of a particular category tothe start of the next category is considered to be a command belongingto that particular category. Commands may belong to any number ofcategories, as shown in Table 3 below, wherein the “source” command isincluded in the “Script Commands” category, as well as in the categorynamed “Test Category”.

[0044] An exemplary segment of Main Category file 215 is shown in Table3, below. TABLE 3 Main Category File % Script Commands .exit .gosub.goto .if .ifdef .return : source source_base % Run Commands stepstep_all step_over continue continue_one # The next category illustratesthe fact that a command may # belong to more than one category % TestCategory source step_all

[0045] At step 420, Main Category File 215 is read to determine theindices in which each command should be placed. At step 425, eachcommand (or subject) in Main Category File 215 is associated with one ormore indices, using the correspondence set forth in the file 215. Atstep 430, each command (or subject) is inserted into Data Structure 216,wherein each command is associated with the appropriate indices asindicated by the command-to-category association of step 425. The datastructure shown below in Table 4 is a Perl language hash table, whereineach hash has multiple values per key, and each key is an array. Itshould be noted, however, that any type of array mechanism could beemployed to provide the desired association between each command and oneor more relevant categories. TABLE 4 Data Structure for IndexingCommands My $type = “”; My $cmd = “”; My $cmd_type = “”; Open(TMP,$categories);  # Read in the Main Category file and store it into aglobal hash.  # Commands are allowed to belong to more than onecategory,  # which is why an array is used.  # (hashes with multiplevalues per key) while(<TMP>) {  if(/{circumflex over ( )}#/) {    next;# the ‘#’ is a comment. Skip it.  } elsif(/{circumflex over ( )}\s/) {   next; # skip blank lines  } elsif(/{circumflex over ( )}%/) {   s/{circumflex over ( )}%\s+//; # trim hash mark and any # leadingwhitespace    chomp; # trim trailing whitespace    $type = $_;  } else {   chomp;    push( @{$cmds{$_}}, $type);  } } close(TMP);

[0046] At step 433, text in Help Text File 210 is copied to anintermediate working directory, referred to as Command Name directory212. Global index file 214, command name files 220(*) and index categoryfiles 230(*) (described below) are also copied to this directory. Asegment of a subdirectory named “Help”, containing HTML files for theindividual command categories, as well as the command names, located incommand name directory 212, is shown below. Run_Commands.nav.htmlScript_Commands.nav.html address.addr.html address.asel.htmladdress.decode.html address.encode.html address.nav.html

[0047] The Run_Commands.nav.html file, for example, contains thefollowing list of commands: continue continue_one step step_allstep_over

[0048] All of the files generated by the present system are located inthe Command (subject) Name directory 212. At step 433, Index Categoryfiles 230(*) are present, but do not yet include any hyperlinks.Hyperlinks are added at step 470, described below.

[0049]FIG. 4B illustrates an exemplary instruction loop for parsing theHelp Text file 210 to create Command (subject) Name files 220(1)-220(n)and Index files 230(1)-230(m). As shown in FIG. 4B, at step 440, one ormore lines of data is read from Help Text file 210.

[0050] At step 445, if a beginning (command name) delimiter (e.g.,“Command”) is encountered in the data read from the Help Text file 210,then an Command Name file 220(*) is created for the term appearing inthe line in the file 210 following the delimiter. Each Command Name file220(*) contains HTML-encoded text for the associated command (orsubject). To help illustrate the steps shown in FIG. 4B, the “step”command shown in Table 1 is used as an example: Command: step step[<count>] Help: Single step the current cpu for <count> instructions...End:

[0051] In the above example, it can be seen that the line following thebeginning delimiter “Command” contains the text “step”. In accordancewith the present system, a Command Name file 220(*) containing the HTMLcode for the present command is generated at step 460. In the presentexample, a Command Name file 220(*) named “step.html” containing theHTML code for the “step” command is generated. The HTML for step.html isshown below in Table 5. TABLE 5 step.html <!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 4.0Transitional//EN”“http://www.w3.org/TR/REC-html40/loose.dtd> <html><head>  <title>step </title>  <link REL=“STYLESHEET” TYPE=“text/css”HREF=“../beta.css”> </HEAD> <body> <table width=“100%”><tr><tdalign=“right”><div class=“ovlink”><a href=“../../overview.html”>Overview</a></div></td></tr></table> <table>  <tr>  <td><img src=“../archsimt.gif”></td>   <td>    <divclass=“helpversion”>halfdome 2.0.17</div>    <divclass=“frametitle”>generated Thu Jun 28 12:47:54 2001</div></td>   </td> </tr> </table> <hr> <div class=“frametitle”>step </div> <br> usage:<div class=“usage”>step [&lt;count&gt;] </div> <br> description: <preclass=“desc”> Single step the current cpu for &lt;count&gt;instructions. If &lt;count&gt; is omitted, single step one instruction.See ‘help continue’ for a description of events that will cause an earlytermination of this command. </pre> <hr> </body> </html>

[0052] At step 465, a hyperlink is created from Global Index File 214 tothe appropriate Command Name HITML file 220(*). For example, thehyperlink for the “step” command might appear as: <divclass=“framelink”><a href=“step.html”   target=“helpFrame”>step</a></div>

[0053] The above hyperlink links Index(n) [reference no. 101(n)] inwindow 108 with the corresponding Subindex(m) [reference no. 104(m)] inwindow 109.

[0054] At step 470, hyperlinks are then created from the indices(categories) in data structure 216 to the associated Command Name files220(*). As an example, the Index (category) file containing hyperlinksfrom the Run Commands category to the associated commands in thatcategory is shown below in Table 6. TABLE 6 File name:Run_Commands.nav.html <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.0Transitional//EN“”http://www.w3.org/TR/REC-html40/loose.dtd> <html><head>  <title>Run Commands</title>  <link REL=“STYLESHEET”TYPE=“text/css” HREF=“../beta.css”> </HEAD> <body> <divclass=“frametitle”>Run Commands</div> <br> <a href=“continue.html”target=“helpFrame”>continue </a> <a href=“continue_one.html”target=“helpFrame”>continue_one </a> <a href=“step.html”target=“helpFrame”>Step </a> <a href=“step_all.html”target=“helpFrame”>step_all </a>< <a href=“step_over.html”target=“helpFrame”>Step_over </a> </body> </html>

[0055] Note that, for example, the above hyperlink “step.html” linksSubindex(m) [reference no. 104(m)] in window 109 with target window 110,to display corresponding help text 111 (i.e., the text display generatedby step.html) therein.

[0056] A branch back to step 435 is then taken, where a check is made todetermine whether there is any remaining unread data in Help Text file210. If all of the data in the file 210 has been read, then the parsingof Help Text file 210 is completed, and processing resumes as shown inFIG. 3, beginning at step 315 (described below). If more data remains inthe Help Text file 210, then steps 440 through 445 are repeated, asdescribed above.

[0057] At step 445, if a beginning delimiter is not encountered, then acheck is made for a “Help” delimiter, identifying the beginning of thehelp text, at step 450. If a Help delimiter is found, then, at step 455,the help text is copied from Help Text file 210 to the appropriateCommand Name HTML file 220(*). Processing of Help Text file 210 thencontinues, at step 435, until the end of the file is encountered. If ahelp delimiter is not found, then, by default, the remaining data (line)in the file must be an “End” delimiter, and the Command Name HTML file220(*) that was just generated is closed, at step 451.

[0058] At step 315, the hyperlinked output generated in the above steps(shown in FIGS. 4A and 4B) is copied to the appropriate web server (notshown). Finally, at step 320, Links on web page 100 are updated by thepresent system to point to the new (or modified) version of the helpdocumentation created in accordance with the process described above.

[0059] While exemplary embodiments of the present invention have beenshown in the drawings and described above, it will be apparent to oneskilled in the art that various embodiments of the present invention arepossible. For example, the specific sequence of steps described above inFIGS. 1, 3, 4A and 4B, as well as the particular files and directoriesshown in FIG. 2, should not be construed as limited to the specificembodiments described herein. Modification may be made to these andother specific elements of the invention without departing from itsspirit and scope as expressed in the following claims.

We claim:
 1. A system for linking a plurality of indices with related subjects and target text associated with each of the subjects comprising the steps of: generating a global index file comprising said subjects and a corresponding address of the text associated therewith; generating a data structure indicative of a correspondence between said indices and associated said subjects; generating a subject name file comprising HTML-encoded target text associated therewith, for each of the subjects; generating, for each of the indices, a first set of hyperlinks wherein each of the hyperlinks therein links one of the indices to the target text corresponding to one of the subjects in one of the indices; and generating a second set of hyperlinks wherein each of the hyperlinks therein links one of the subjects to the text corresponding thereto in the subject name file.
 2. The system of claim 1, including the additional steps of: displaying, in a first window, in accordance with said data structure, a list of the indices; displaying, in a second window, a set of sub-indices comprising a list of subjects corresponding to a selected one of the indices in the first window, using a corresponding one of the first set of hyperlinks; and displaying, in a third window, said target text in the subject name file corresponding to a selected one of the subjects in the second window, using a corresponding one of the second set of hyperlinks.
 3. The system of claim 1, including the step of initially loading said target text from a first text file into a second text file, wherein a beginning delimiter indicating a subject name, and a text delimiter indicating the text associated with the subject name, for each subject therein, are inserted into the second text file.
 4. The system of claim 3, including the steps of: parsing the second text file to detect said beginning delimiter; generating the subject name file for the associated subject name following the beginning delimiter; parsing the second text file to detect said text delimiter; and copying the text associated with the subject name in the second text file to the subject name file.
 5. The system of claim 1, including the steps of: defining a plurality of indices; creating a category file comprising a plurality of said indices and a group of related subjects corresponding to each of the indices; and creating said data structure by associating each said subject with a corresponding one of said indices in accordance with the category file.
 6. The system of claim 1, wherein a hyperlink is created that links one of the indices directly with said text associated therewith.
 7. The system of claim 1, including the step of copying the first set of hyperlinks, the second set of hyperlinks, and the HTML-encoded target text to a web site.
 8. The system of claim 7, including the step of updating, on the web site, the hyperlinks necessary to link a web page on the web site to a new version of the document containing the HTML-encoded target text.
 9. A system for generating hyperlinks between a plurality of indices and associated text on a web site comprising the steps of: creating a category file indicating an association between each of the indices and corresponding subject names; generating a data structure associating said indices and said corresponding subject names in accordance with said category file; generating a plurality of subject name files, each including text corresponding to a subject associated therewith; generating a global index file comprising said hyperlinks to each of said subject name files; generating a plurality of index files, each including hyperlinks between each of the indices and corresponding said subject name files in accordance with said data structure; displaying, in a first window, in accordance with said index files, a list of category names corresponding to said indices; displaying, in a second window, a set of sub-indices comprising a list of subject names corresponding to a selected instance of said category names, in accordance with said index files, in response to a user selecting one of said category names; and displaying, in a third window, said text in said subject name file corresponding to a selected one of said subject names, using said hyperlinks in said global index file, in response to a user selecting one of said subject names in the second window.
 10. The system of claim 9, including the additional step of encoding the text for each of the subject name files in HTML format.
 11. The system of claim 9, including the additional steps of: initially loading said text from a first text file into a second text file; and inserting a beginning delimiter indicating a subject name, and a text delimiter indicating the text associated with the subject name, for each subject therein, are inserted into the second text file; wherein the additional steps are performed prior to copying the text to the web site.
 12. The system of claim 11, including the steps of: parsing the second text file to detect said beginning delimiter; generating the subject name file for the associated subject name following the beginning delimiter; parsing the second text file to detect said text delimiter; and copying the text associated with the subject name in the second text file to the subject name file.
 13. The system of claim 9, including the steps of: defining a plurality of indices; creating a category file comprising a plurality of said indices and a group of related subjects corresponding to each of the indices; and creating said data structure by associating each said subject with a corresponding one of said indices in accordance with the category file.
 14. The system of claim 9, including the steps of: copying the first set of hyperlinks, the second set of hyperlinks, and the HTML-encoded target text to the web site; and updating, on the web site, the hyperlinks necessary to link a web page on the web site to a new version of the document containing the HTML-encoded target text.
 15. The system of claim 9, wherein a hyperlink is created that links one of the indices directly with said text associated therewith.
 16. A system for linking, on a web page, a plurality of system commands, categories thereof, and associated text, the system comprising the steps of: generating a global index file comprising said commands and a corresponding address of the text associated therewith; generating a data structure indicative of a correspondence between said categories and associated said commands; generating a command name file comprising HTML-encoded text associated therewith, for each of the commands; generating, for each of the categories, a first set of hyperlinks wherein each of the hyperlinks therein links one of the categories to the target text corresponding to one of the commands in one of the categories; and generating a second set of hyperlinks wherein each of the hyperlinks therein links one of the commands to the text corresponding thereto in the command name file.
 17. The system of claim 16, including the steps of: defining a plurality of indices; creating a category file comprising a plurality of said indices and a group of related subjects corresponding to each of the indices; and creating said data structure by associating each said command with a corresponding one of said indices in accordance with the category file.
 18. The system of claim 17, including the additional steps of: displaying, in a first window, in accordance with said data structure, a list of the categories; displaying, in a second window, a list of commands corresponding to a selected one of said categories in the first window, using a corresponding one of the first set of hyperlinks; and displaying, in a third window, the text in the command name file corresponding to a selected one of the subjects in the second window, using a corresponding one of the second set of hyperlinks.
 19. The system of claim 18, including the steps of: initially loading said target text from a first text file into a second text file, wherein a beginning delimiter indicating a subject name, and a text delimiter indicating the text associated with the subject name, for each subject therein, are inserted into the second text file; parsing the second text file to detect said beginning delimiter; generating the subject name file for the associated subject name following the beginning delimiter; parsing the second text file to detect said text delimiter; and copying the text associated with the subject name in the second text file to the subject name file.
 20. The system of claim 18, including the steps of: copying the first set of hyperlinks, the second set of hyperlinks, and the HTML-encoded target text to a web site displaying the web page; and updating, on the web site, the hyperlinks necessary to link the web page to a new version of the document containing the HTML-encoded target text. 